package paqueteBasket;

import java.awt.HeadlessException;
import java.sql.Connection;
import java.util.ArrayList;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;

public class Marco extends javax.swing.JFrame {
    private ArrayList <javax.swing.JTextField> listaTxtFields;
    private ArrayList <String> cadenaEquipos;
    Datos datos = new Datos();
    
    //BASE DE DATOS
    Connection con;
    Conexion objeto;
    
    
    public Marco() throws Exception {
        initComponents();
        this.setTitle("basket-project.ycobo v05.13");
        this.setSize(700, 700);
        this.setResizable(false);
        
        btnAceptarNombreEquipos.setVisible(false);
        cadenaEquipos = new ArrayList();
        listaTxtFields = new ArrayList();
        
        //BASE DE DATOS
        objeto = new Conexion();
        con = ((Connection)objeto.conectarMysql());
    }

    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        dialAcerca = new javax.swing.JDialog();
        pnlFondo = new javax.swing.JPanel();
        pnlToolBar = new javax.swing.JPanel();
        jToolBar1 = new javax.swing.JToolBar();
        jSeparator3 = new javax.swing.JSeparator();
        pnlContenido = new javax.swing.JPanel();
        pnlIndex = new javax.swing.JTabbedPane();
        pnlClasificacion = new javax.swing.JPanel();
        pnlClasificacionVacio = new javax.swing.JPanel();
        lblClasificacionVacio1 = new javax.swing.JLabel();
        lblClasificacionVacio2 = new javax.swing.JLabel();
        pnlClasificacion10 = new javax.swing.JPanel();
        jLabel3 = new javax.swing.JLabel();
        jScrollPane1 = new javax.swing.JScrollPane();
        tblClasificacion10 = new javax.swing.JTable();
        pnlClasificacion14 = new javax.swing.JPanel();
        jLabel4 = new javax.swing.JLabel();
        jScrollPane3 = new javax.swing.JScrollPane();
        tblClasificacion14A = new javax.swing.JTable();
        jLabel5 = new javax.swing.JLabel();
        jScrollPane4 = new javax.swing.JScrollPane();
        tblClasificacion14B = new javax.swing.JTable();
        pnlClasificacion20 = new javax.swing.JPanel();
        jLabel8 = new javax.swing.JLabel();
        jScrollPane6 = new javax.swing.JScrollPane();
        tblClasificacion20C = new javax.swing.JTable();
        jScrollPane7 = new javax.swing.JScrollPane();
        tblClasificacion20D = new javax.swing.JTable();
        jLabel9 = new javax.swing.JLabel();
        jScrollPane8 = new javax.swing.JScrollPane();
        tblClasificacion20B = new javax.swing.JTable();
        jLabel10 = new javax.swing.JLabel();
        jScrollPane9 = new javax.swing.JScrollPane();
        tblClasificacion20A = new javax.swing.JTable();
        jLabel11 = new javax.swing.JLabel();
        pnlCalendario = new javax.swing.JPanel();
        pnlConfig = new javax.swing.JPanel();
        pnlSelectorEquipos = new javax.swing.JPanel();
        pnlSelectorNorth = new javax.swing.JPanel();
        jLabel1 = new javax.swing.JLabel();
        txtNEquipos = new javax.swing.JTextField();
        jLabel22 = new javax.swing.JLabel();
        jLabel2 = new javax.swing.JLabel();
        jPanel1 = new javax.swing.JPanel();
        pnlSelectorSouth = new javax.swing.JPanel();
        jPanel2 = new javax.swing.JPanel();
        btnAceptarNombreEquipos = new javax.swing.JButton();
        pnlFakeIndex = new javax.swing.JPanel();
        btnFINuevo = new javax.swing.JButton();
        mnuBar = new javax.swing.JMenuBar();
        mnuArchivo = new javax.swing.JMenu();
        mnuItNuevo = new javax.swing.JMenuItem();
        mnuItAbrir = new javax.swing.JMenuItem();
        mnuItGuardar = new javax.swing.JMenuItem();
        mnuItGuardarComo = new javax.swing.JMenuItem();
        jSeparator1 = new javax.swing.JPopupMenu.Separator();
        mnuItImprimir = new javax.swing.JMenuItem();
        jSeparator2 = new javax.swing.JPopupMenu.Separator();
        mnuItSalir = new javax.swing.JMenuItem();
        mnuAjustes = new javax.swing.JMenu();
        mnuAyuda = new javax.swing.JMenu();
        mnuItVerAyuda = new javax.swing.JMenuItem();
        mnuItAcerca = new javax.swing.JMenuItem();

        dialAcerca.setTitle("Acerca de");
        dialAcerca.setMinimumSize(new java.awt.Dimension(300, 400));
        dialAcerca.setPreferredSize(new java.awt.Dimension(300, 400));

        javax.swing.GroupLayout dialAcercaLayout = new javax.swing.GroupLayout(dialAcerca.getContentPane());
        dialAcerca.getContentPane().setLayout(dialAcercaLayout);
        dialAcercaLayout.setHorizontalGroup(
            dialAcercaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 400, Short.MAX_VALUE)
        );
        dialAcercaLayout.setVerticalGroup(
            dialAcercaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 300, Short.MAX_VALUE)
        );

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        getContentPane().setLayout(new java.awt.CardLayout());

        pnlFondo.setLayout(new javax.swing.BoxLayout(pnlFondo, javax.swing.BoxLayout.PAGE_AXIS));

        pnlToolBar.setMaximumSize(new java.awt.Dimension(32767, 35));
        pnlToolBar.setPreferredSize(new java.awt.Dimension(700, 35));

        jToolBar1.setFloatable(false);
        jToolBar1.setRollover(true);

        javax.swing.GroupLayout pnlToolBarLayout = new javax.swing.GroupLayout(pnlToolBar);
        pnlToolBar.setLayout(pnlToolBarLayout);
        pnlToolBarLayout.setHorizontalGroup(
            pnlToolBarLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jToolBar1, javax.swing.GroupLayout.DEFAULT_SIZE, 700, Short.MAX_VALUE)
            .addGroup(pnlToolBarLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addComponent(jSeparator3, javax.swing.GroupLayout.DEFAULT_SIZE, 700, Short.MAX_VALUE))
        );
        pnlToolBarLayout.setVerticalGroup(
            pnlToolBarLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlToolBarLayout.createSequentialGroup()
                .addComponent(jToolBar1, javax.swing.GroupLayout.PREFERRED_SIZE, 25, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(0, 10, Short.MAX_VALUE))
            .addGroup(pnlToolBarLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, pnlToolBarLayout.createSequentialGroup()
                    .addGap(0, 33, Short.MAX_VALUE)
                    .addComponent(jSeparator3, javax.swing.GroupLayout.PREFERRED_SIZE, 2, javax.swing.GroupLayout.PREFERRED_SIZE)))
        );

        pnlFondo.add(pnlToolBar);

        pnlContenido.setLayout(new java.awt.CardLayout());

        pnlIndex.setMinimumSize(new java.awt.Dimension(700, 625));
        pnlIndex.setOpaque(true);
        pnlIndex.setPreferredSize(new java.awt.Dimension(700, 625));

        pnlClasificacion.setLayout(new java.awt.CardLayout());

        lblClasificacionVacio1.setText("No hay datos que mostrar.");

        lblClasificacionVacio2.setText("Cree un nuevo torneo o importe uno existente.");

        javax.swing.GroupLayout pnlClasificacionVacioLayout = new javax.swing.GroupLayout(pnlClasificacionVacio);
        pnlClasificacionVacio.setLayout(pnlClasificacionVacioLayout);
        pnlClasificacionVacioLayout.setHorizontalGroup(
            pnlClasificacionVacioLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlClasificacionVacioLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(pnlClasificacionVacioLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(lblClasificacionVacio1)
                    .addComponent(lblClasificacionVacio2))
                .addContainerGap(458, Short.MAX_VALUE))
        );
        pnlClasificacionVacioLayout.setVerticalGroup(
            pnlClasificacionVacioLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlClasificacionVacioLayout.createSequentialGroup()
                .addContainerGap()
                .addComponent(lblClasificacionVacio1)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(lblClasificacionVacio2)
                .addContainerGap(558, Short.MAX_VALUE))
        );

        pnlClasificacion.add(pnlClasificacionVacio, "card2");

        jLabel3.setText("Fase Regular:");

        tblClasificacion10.setModel(new javax.swing.table.DefaultTableModel(
            new Object [][] {
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null}
            },
            new String [] {
                "Clasificación", "P.J.", "P.G.", "P.E.", "P.P", "G.F.", "G.C.", "Ptos"
            }
        ) {
            Class[] types = new Class [] {
                java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class
            };
            boolean[] canEdit = new boolean [] {
                false, false, false, false, false, false, true, true
            };

            public Class getColumnClass(int columnIndex) {
                return types [columnIndex];
            }

            public boolean isCellEditable(int rowIndex, int columnIndex) {
                return canEdit [columnIndex];
            }
        });
        tblClasificacion10.setColumnSelectionAllowed(true);
        tblClasificacion10.getTableHeader().setReorderingAllowed(false);
        jScrollPane1.setViewportView(tblClasificacion10);
        tblClasificacion10.getColumnModel().getSelectionModel().setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION);
        tblClasificacion10.getColumnModel().getColumn(0).setResizable(false);
        tblClasificacion10.getColumnModel().getColumn(0).setPreferredWidth(50);
        tblClasificacion10.getColumnModel().getColumn(1).setResizable(false);
        tblClasificacion10.getColumnModel().getColumn(1).setPreferredWidth(10);
        tblClasificacion10.getColumnModel().getColumn(2).setResizable(false);
        tblClasificacion10.getColumnModel().getColumn(2).setPreferredWidth(10);
        tblClasificacion10.getColumnModel().getColumn(3).setResizable(false);
        tblClasificacion10.getColumnModel().getColumn(3).setPreferredWidth(10);
        tblClasificacion10.getColumnModel().getColumn(4).setResizable(false);
        tblClasificacion10.getColumnModel().getColumn(4).setPreferredWidth(10);
        tblClasificacion10.getColumnModel().getColumn(5).setResizable(false);
        tblClasificacion10.getColumnModel().getColumn(5).setPreferredWidth(10);
        tblClasificacion10.getColumnModel().getColumn(6).setResizable(false);
        tblClasificacion10.getColumnModel().getColumn(6).setPreferredWidth(10);
        tblClasificacion10.getColumnModel().getColumn(7).setResizable(false);
        tblClasificacion10.getColumnModel().getColumn(7).setPreferredWidth(10);

        javax.swing.GroupLayout pnlClasificacion10Layout = new javax.swing.GroupLayout(pnlClasificacion10);
        pnlClasificacion10.setLayout(pnlClasificacion10Layout);
        pnlClasificacion10Layout.setHorizontalGroup(
            pnlClasificacion10Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlClasificacion10Layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(pnlClasificacion10Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 675, Short.MAX_VALUE)
                    .addGroup(pnlClasificacion10Layout.createSequentialGroup()
                        .addComponent(jLabel3)
                        .addGap(0, 0, Short.MAX_VALUE)))
                .addContainerGap())
        );
        pnlClasificacion10Layout.setVerticalGroup(
            pnlClasificacion10Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlClasificacion10Layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(jLabel3)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 189, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(383, Short.MAX_VALUE))
        );

        pnlClasificacion.add(pnlClasificacion10, "card3");

        jLabel4.setText("Grupo B:");

        tblClasificacion14A.setModel(new javax.swing.table.DefaultTableModel(
            new Object [][] {
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null}
            },
            new String [] {
                "Clasificación", "P.J.", "P.G.", "P.E.", "P.P", "G.F.", "G.C.", "Ptos"
            }
        ) {
            Class[] types = new Class [] {
                java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class
            };
            boolean[] canEdit = new boolean [] {
                false, false, false, false, false, false, true, true
            };

            public Class getColumnClass(int columnIndex) {
                return types [columnIndex];
            }

            public boolean isCellEditable(int rowIndex, int columnIndex) {
                return canEdit [columnIndex];
            }
        });
        tblClasificacion14A.getTableHeader().setReorderingAllowed(false);
        jScrollPane3.setViewportView(tblClasificacion14A);
        tblClasificacion14A.getColumnModel().getSelectionModel().setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION);
        tblClasificacion14A.getColumnModel().getColumn(0).setResizable(false);
        tblClasificacion14A.getColumnModel().getColumn(0).setPreferredWidth(50);
        tblClasificacion14A.getColumnModel().getColumn(1).setResizable(false);
        tblClasificacion14A.getColumnModel().getColumn(1).setPreferredWidth(10);
        tblClasificacion14A.getColumnModel().getColumn(2).setResizable(false);
        tblClasificacion14A.getColumnModel().getColumn(2).setPreferredWidth(10);
        tblClasificacion14A.getColumnModel().getColumn(3).setResizable(false);
        tblClasificacion14A.getColumnModel().getColumn(3).setPreferredWidth(10);
        tblClasificacion14A.getColumnModel().getColumn(4).setResizable(false);
        tblClasificacion14A.getColumnModel().getColumn(4).setPreferredWidth(10);
        tblClasificacion14A.getColumnModel().getColumn(5).setResizable(false);
        tblClasificacion14A.getColumnModel().getColumn(5).setPreferredWidth(10);
        tblClasificacion14A.getColumnModel().getColumn(6).setResizable(false);
        tblClasificacion14A.getColumnModel().getColumn(6).setPreferredWidth(10);
        tblClasificacion14A.getColumnModel().getColumn(7).setResizable(false);
        tblClasificacion14A.getColumnModel().getColumn(7).setPreferredWidth(10);

        jLabel5.setText("Grupo A:");

        tblClasificacion14B.setModel(new javax.swing.table.DefaultTableModel(
            new Object [][] {
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null}
            },
            new String [] {
                "Clasificación", "P.J.", "P.G.", "P.E.", "P.P", "G.F.", "G.C.", "Ptos"
            }
        ) {
            Class[] types = new Class [] {
                java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class
            };
            boolean[] canEdit = new boolean [] {
                false, false, false, false, false, false, true, true
            };

            public Class getColumnClass(int columnIndex) {
                return types [columnIndex];
            }

            public boolean isCellEditable(int rowIndex, int columnIndex) {
                return canEdit [columnIndex];
            }
        });
        tblClasificacion14B.getTableHeader().setReorderingAllowed(false);
        jScrollPane4.setViewportView(tblClasificacion14B);
        tblClasificacion14B.getColumnModel().getSelectionModel().setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION);
        tblClasificacion14B.getColumnModel().getColumn(0).setResizable(false);
        tblClasificacion14B.getColumnModel().getColumn(0).setPreferredWidth(50);
        tblClasificacion14B.getColumnModel().getColumn(1).setResizable(false);
        tblClasificacion14B.getColumnModel().getColumn(1).setPreferredWidth(10);
        tblClasificacion14B.getColumnModel().getColumn(2).setResizable(false);
        tblClasificacion14B.getColumnModel().getColumn(2).setPreferredWidth(10);
        tblClasificacion14B.getColumnModel().getColumn(3).setResizable(false);
        tblClasificacion14B.getColumnModel().getColumn(3).setPreferredWidth(10);
        tblClasificacion14B.getColumnModel().getColumn(4).setResizable(false);
        tblClasificacion14B.getColumnModel().getColumn(4).setPreferredWidth(10);
        tblClasificacion14B.getColumnModel().getColumn(5).setResizable(false);
        tblClasificacion14B.getColumnModel().getColumn(5).setPreferredWidth(10);
        tblClasificacion14B.getColumnModel().getColumn(6).setResizable(false);
        tblClasificacion14B.getColumnModel().getColumn(6).setPreferredWidth(10);
        tblClasificacion14B.getColumnModel().getColumn(7).setResizable(false);
        tblClasificacion14B.getColumnModel().getColumn(7).setPreferredWidth(10);

        javax.swing.GroupLayout pnlClasificacion14Layout = new javax.swing.GroupLayout(pnlClasificacion14);
        pnlClasificacion14.setLayout(pnlClasificacion14Layout);
        pnlClasificacion14Layout.setHorizontalGroup(
            pnlClasificacion14Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, pnlClasificacion14Layout.createSequentialGroup()
                .addGap(21, 21, 21)
                .addGroup(pnlClasificacion14Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addGroup(pnlClasificacion14Layout.createSequentialGroup()
                        .addComponent(jLabel5)
                        .addGap(299, 299, 299)
                        .addComponent(jLabel4)
                        .addGap(280, 280, 280))
                    .addComponent(jScrollPane4, javax.swing.GroupLayout.PREFERRED_SIZE, 323, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addContainerGap())
            .addGroup(pnlClasificacion14Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(pnlClasificacion14Layout.createSequentialGroup()
                    .addGap(20, 20, 20)
                    .addComponent(jScrollPane3, javax.swing.GroupLayout.PREFERRED_SIZE, 323, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addContainerGap(352, Short.MAX_VALUE)))
        );
        pnlClasificacion14Layout.setVerticalGroup(
            pnlClasificacion14Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlClasificacion14Layout.createSequentialGroup()
                .addGap(20, 20, 20)
                .addGroup(pnlClasificacion14Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel4)
                    .addComponent(jLabel5))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jScrollPane4, javax.swing.GroupLayout.PREFERRED_SIZE, 192, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(371, Short.MAX_VALUE))
            .addGroup(pnlClasificacion14Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(pnlClasificacion14Layout.createSequentialGroup()
                    .addGap(41, 41, 41)
                    .addComponent(jScrollPane3, javax.swing.GroupLayout.PREFERRED_SIZE, 192, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addContainerGap(370, Short.MAX_VALUE)))
        );

        pnlClasificacion.add(pnlClasificacion14, "card4");

        jLabel8.setText("Grupo B:");

        tblClasificacion20C.setModel(new javax.swing.table.DefaultTableModel(
            new Object [][] {
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null}
            },
            new String [] {
                "Clasificación", "P.J.", "P.G.", "P.E.", "P.P", "G.F.", "G.C.", "Ptos"
            }
        ) {
            Class[] types = new Class [] {
                java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class
            };
            boolean[] canEdit = new boolean [] {
                false, false, false, false, false, false, true, true
            };

            public Class getColumnClass(int columnIndex) {
                return types [columnIndex];
            }

            public boolean isCellEditable(int rowIndex, int columnIndex) {
                return canEdit [columnIndex];
            }
        });
        tblClasificacion20C.getTableHeader().setReorderingAllowed(false);
        jScrollPane6.setViewportView(tblClasificacion20C);
        tblClasificacion20C.getColumnModel().getSelectionModel().setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION);
        tblClasificacion20C.getColumnModel().getColumn(0).setResizable(false);
        tblClasificacion20C.getColumnModel().getColumn(0).setPreferredWidth(50);
        tblClasificacion20C.getColumnModel().getColumn(1).setResizable(false);
        tblClasificacion20C.getColumnModel().getColumn(1).setPreferredWidth(10);
        tblClasificacion20C.getColumnModel().getColumn(2).setResizable(false);
        tblClasificacion20C.getColumnModel().getColumn(2).setPreferredWidth(10);
        tblClasificacion20C.getColumnModel().getColumn(3).setResizable(false);
        tblClasificacion20C.getColumnModel().getColumn(3).setPreferredWidth(10);
        tblClasificacion20C.getColumnModel().getColumn(4).setResizable(false);
        tblClasificacion20C.getColumnModel().getColumn(4).setPreferredWidth(10);
        tblClasificacion20C.getColumnModel().getColumn(5).setResizable(false);
        tblClasificacion20C.getColumnModel().getColumn(5).setPreferredWidth(10);
        tblClasificacion20C.getColumnModel().getColumn(6).setResizable(false);
        tblClasificacion20C.getColumnModel().getColumn(6).setPreferredWidth(10);
        tblClasificacion20C.getColumnModel().getColumn(7).setResizable(false);
        tblClasificacion20C.getColumnModel().getColumn(7).setPreferredWidth(10);

        tblClasificacion20D.setModel(new javax.swing.table.DefaultTableModel(
            new Object [][] {
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null}
            },
            new String [] {
                "Clasificación", "P.J.", "P.G.", "P.E.", "P.P", "G.F.", "G.C.", "Ptos"
            }
        ) {
            Class[] types = new Class [] {
                java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class
            };
            boolean[] canEdit = new boolean [] {
                false, false, false, false, false, false, true, true
            };

            public Class getColumnClass(int columnIndex) {
                return types [columnIndex];
            }

            public boolean isCellEditable(int rowIndex, int columnIndex) {
                return canEdit [columnIndex];
            }
        });
        tblClasificacion20D.getTableHeader().setReorderingAllowed(false);
        jScrollPane7.setViewportView(tblClasificacion20D);
        tblClasificacion20D.getColumnModel().getSelectionModel().setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION);
        tblClasificacion20D.getColumnModel().getColumn(0).setResizable(false);
        tblClasificacion20D.getColumnModel().getColumn(0).setPreferredWidth(50);
        tblClasificacion20D.getColumnModel().getColumn(1).setResizable(false);
        tblClasificacion20D.getColumnModel().getColumn(1).setPreferredWidth(10);
        tblClasificacion20D.getColumnModel().getColumn(2).setResizable(false);
        tblClasificacion20D.getColumnModel().getColumn(2).setPreferredWidth(10);
        tblClasificacion20D.getColumnModel().getColumn(3).setResizable(false);
        tblClasificacion20D.getColumnModel().getColumn(3).setPreferredWidth(10);
        tblClasificacion20D.getColumnModel().getColumn(4).setResizable(false);
        tblClasificacion20D.getColumnModel().getColumn(4).setPreferredWidth(10);
        tblClasificacion20D.getColumnModel().getColumn(5).setResizable(false);
        tblClasificacion20D.getColumnModel().getColumn(5).setPreferredWidth(10);
        tblClasificacion20D.getColumnModel().getColumn(6).setResizable(false);
        tblClasificacion20D.getColumnModel().getColumn(6).setPreferredWidth(10);
        tblClasificacion20D.getColumnModel().getColumn(7).setResizable(false);
        tblClasificacion20D.getColumnModel().getColumn(7).setPreferredWidth(10);

        jLabel9.setText("Grupo A:");

        tblClasificacion20B.setModel(new javax.swing.table.DefaultTableModel(
            new Object [][] {
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null}
            },
            new String [] {
                "Clasificación", "P.J.", "P.G.", "P.E.", "P.P", "G.F.", "G.C.", "Ptos"
            }
        ) {
            Class[] types = new Class [] {
                java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class
            };
            boolean[] canEdit = new boolean [] {
                false, false, false, false, false, false, true, true
            };

            public Class getColumnClass(int columnIndex) {
                return types [columnIndex];
            }

            public boolean isCellEditable(int rowIndex, int columnIndex) {
                return canEdit [columnIndex];
            }
        });
        tblClasificacion20B.getTableHeader().setReorderingAllowed(false);
        jScrollPane8.setViewportView(tblClasificacion20B);
        tblClasificacion20B.getColumnModel().getSelectionModel().setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION);
        tblClasificacion20B.getColumnModel().getColumn(0).setResizable(false);
        tblClasificacion20B.getColumnModel().getColumn(0).setPreferredWidth(50);
        tblClasificacion20B.getColumnModel().getColumn(1).setResizable(false);
        tblClasificacion20B.getColumnModel().getColumn(1).setPreferredWidth(10);
        tblClasificacion20B.getColumnModel().getColumn(2).setResizable(false);
        tblClasificacion20B.getColumnModel().getColumn(2).setPreferredWidth(10);
        tblClasificacion20B.getColumnModel().getColumn(3).setResizable(false);
        tblClasificacion20B.getColumnModel().getColumn(3).setPreferredWidth(10);
        tblClasificacion20B.getColumnModel().getColumn(4).setResizable(false);
        tblClasificacion20B.getColumnModel().getColumn(4).setPreferredWidth(10);
        tblClasificacion20B.getColumnModel().getColumn(5).setResizable(false);
        tblClasificacion20B.getColumnModel().getColumn(5).setPreferredWidth(10);
        tblClasificacion20B.getColumnModel().getColumn(6).setResizable(false);
        tblClasificacion20B.getColumnModel().getColumn(6).setPreferredWidth(10);
        tblClasificacion20B.getColumnModel().getColumn(7).setResizable(false);
        tblClasificacion20B.getColumnModel().getColumn(7).setPreferredWidth(10);

        jLabel10.setText("Grupo C:");

        tblClasificacion20A.setModel(new javax.swing.table.DefaultTableModel(
            new Object [][] {
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null},
                {null, null, null, null, null, null, null, null}
            },
            new String [] {
                "Clasificación", "P.J.", "P.G.", "P.E.", "P.P", "G.F.", "G.C.", "Ptos"
            }
        ) {
            Class[] types = new Class [] {
                java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class
            };
            boolean[] canEdit = new boolean [] {
                false, false, false, false, false, false, true, true
            };

            public Class getColumnClass(int columnIndex) {
                return types [columnIndex];
            }

            public boolean isCellEditable(int rowIndex, int columnIndex) {
                return canEdit [columnIndex];
            }
        });
        tblClasificacion20A.getTableHeader().setReorderingAllowed(false);
        jScrollPane9.setViewportView(tblClasificacion20A);
        tblClasificacion20A.getColumnModel().getSelectionModel().setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION);
        tblClasificacion20A.getColumnModel().getColumn(0).setResizable(false);
        tblClasificacion20A.getColumnModel().getColumn(0).setPreferredWidth(50);
        tblClasificacion20A.getColumnModel().getColumn(1).setResizable(false);
        tblClasificacion20A.getColumnModel().getColumn(1).setPreferredWidth(10);
        tblClasificacion20A.getColumnModel().getColumn(2).setResizable(false);
        tblClasificacion20A.getColumnModel().getColumn(2).setPreferredWidth(10);
        tblClasificacion20A.getColumnModel().getColumn(3).setResizable(false);
        tblClasificacion20A.getColumnModel().getColumn(3).setPreferredWidth(10);
        tblClasificacion20A.getColumnModel().getColumn(4).setResizable(false);
        tblClasificacion20A.getColumnModel().getColumn(4).setPreferredWidth(10);
        tblClasificacion20A.getColumnModel().getColumn(5).setResizable(false);
        tblClasificacion20A.getColumnModel().getColumn(5).setPreferredWidth(10);
        tblClasificacion20A.getColumnModel().getColumn(6).setResizable(false);
        tblClasificacion20A.getColumnModel().getColumn(6).setPreferredWidth(10);
        tblClasificacion20A.getColumnModel().getColumn(7).setResizable(false);
        tblClasificacion20A.getColumnModel().getColumn(7).setPreferredWidth(10);

        jLabel11.setText("Grupo D:");

        javax.swing.GroupLayout pnlClasificacion20Layout = new javax.swing.GroupLayout(pnlClasificacion20);
        pnlClasificacion20.setLayout(pnlClasificacion20Layout);
        pnlClasificacion20Layout.setHorizontalGroup(
            pnlClasificacion20Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlClasificacion20Layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(pnlClasificacion20Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(pnlClasificacion20Layout.createSequentialGroup()
                        .addComponent(jScrollPane6, javax.swing.GroupLayout.PREFERRED_SIZE, 323, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 29, Short.MAX_VALUE)
                        .addComponent(jScrollPane7, javax.swing.GroupLayout.PREFERRED_SIZE, 323, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, pnlClasificacion20Layout.createSequentialGroup()
                        .addGroup(pnlClasificacion20Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jScrollPane9, javax.swing.GroupLayout.PREFERRED_SIZE, 323, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jLabel10)
                            .addComponent(jLabel9))
                        .addGroup(pnlClasificacion20Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(pnlClasificacion20Layout.createSequentialGroup()
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                .addGroup(pnlClasificacion20Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(jLabel8)
                                    .addComponent(jScrollPane8, javax.swing.GroupLayout.PREFERRED_SIZE, 323, javax.swing.GroupLayout.PREFERRED_SIZE)))
                            .addGroup(pnlClasificacion20Layout.createSequentialGroup()
                                .addGap(29, 29, 29)
                                .addComponent(jLabel11)
                                .addGap(0, 0, Short.MAX_VALUE)))))
                .addContainerGap())
        );
        pnlClasificacion20Layout.setVerticalGroup(
            pnlClasificacion20Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlClasificacion20Layout.createSequentialGroup()
                .addGap(19, 19, 19)
                .addGroup(pnlClasificacion20Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addComponent(jLabel9)
                    .addComponent(jLabel8))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(pnlClasificacion20Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addComponent(jScrollPane8, javax.swing.GroupLayout.PREFERRED_SIZE, 192, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jScrollPane9, javax.swing.GroupLayout.PREFERRED_SIZE, 192, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(40, 40, 40)
                .addGroup(pnlClasificacion20Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel10)
                    .addComponent(jLabel11))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(pnlClasificacion20Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jScrollPane6, javax.swing.GroupLayout.PREFERRED_SIZE, 192, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jScrollPane7, javax.swing.GroupLayout.PREFERRED_SIZE, 192, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addContainerGap(120, Short.MAX_VALUE))
        );

        pnlClasificacion.add(pnlClasificacion20, "card5");

        pnlIndex.addTab("Clasificación", pnlClasificacion);

        javax.swing.GroupLayout pnlCalendarioLayout = new javax.swing.GroupLayout(pnlCalendario);
        pnlCalendario.setLayout(pnlCalendarioLayout);
        pnlCalendarioLayout.setHorizontalGroup(
            pnlCalendarioLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 695, Short.MAX_VALUE)
        );
        pnlCalendarioLayout.setVerticalGroup(
            pnlCalendarioLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 603, Short.MAX_VALUE)
        );

        pnlIndex.addTab("Resultados y Calendario", pnlCalendario);

        javax.swing.GroupLayout pnlConfigLayout = new javax.swing.GroupLayout(pnlConfig);
        pnlConfig.setLayout(pnlConfigLayout);
        pnlConfigLayout.setHorizontalGroup(
            pnlConfigLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 695, Short.MAX_VALUE)
        );
        pnlConfigLayout.setVerticalGroup(
            pnlConfigLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 603, Short.MAX_VALUE)
        );

        pnlIndex.addTab("Configuración", pnlConfig);

        pnlContenido.add(pnlIndex, "card3");

        pnlSelectorEquipos.setMinimumSize(new java.awt.Dimension(700, 625));
        pnlSelectorEquipos.setPreferredSize(new java.awt.Dimension(700, 625));
        pnlSelectorEquipos.setLayout(new javax.swing.BoxLayout(pnlSelectorEquipos, javax.swing.BoxLayout.Y_AXIS));

        jLabel1.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        jLabel1.setText("Número de equipos (máximo 20):");

        txtNEquipos.addInputMethodListener(new java.awt.event.InputMethodListener() {
            public void caretPositionChanged(java.awt.event.InputMethodEvent evt) {
            }
            public void inputMethodTextChanged(java.awt.event.InputMethodEvent evt) {
                txtNEquiposInputMethodTextChanged(evt);
            }
        });
        txtNEquipos.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                txtNEquiposKeyReleased(evt);
            }
            public void keyTyped(java.awt.event.KeyEvent evt) {
                txtNEquiposKeyTyped(evt);
            }
        });

        jLabel22.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
        jLabel22.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        jLabel22.setText("Torneo de Basket 2x2");

        javax.swing.GroupLayout pnlSelectorNorthLayout = new javax.swing.GroupLayout(pnlSelectorNorth);
        pnlSelectorNorth.setLayout(pnlSelectorNorthLayout);
        pnlSelectorNorthLayout.setHorizontalGroup(
            pnlSelectorNorthLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlSelectorNorthLayout.createSequentialGroup()
                .addGap(25, 25, 25)
                .addGroup(pnlSelectorNorthLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addGroup(pnlSelectorNorthLayout.createSequentialGroup()
                        .addComponent(jLabel22, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                        .addGap(25, 25, 25))
                    .addGroup(pnlSelectorNorthLayout.createSequentialGroup()
                        .addComponent(jLabel1)
                        .addGap(18, 18, 18)
                        .addComponent(txtNEquipos, javax.swing.GroupLayout.PREFERRED_SIZE, 40, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 377, Short.MAX_VALUE)
                        .addComponent(jLabel2)
                        .addGap(82, 82, 82))))
        );
        pnlSelectorNorthLayout.setVerticalGroup(
            pnlSelectorNorthLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlSelectorNorthLayout.createSequentialGroup()
                .addGap(11, 11, 11)
                .addComponent(jLabel22)
                .addGroup(pnlSelectorNorthLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(pnlSelectorNorthLayout.createSequentialGroup()
                        .addGap(53, 53, 53)
                        .addGroup(pnlSelectorNorthLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jLabel1)
                            .addComponent(txtNEquipos, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addGap(27, 27, 27))
                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, pnlSelectorNorthLayout.createSequentialGroup()
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(jLabel2)
                        .addContainerGap())))
        );

        pnlSelectorEquipos.add(pnlSelectorNorth);

        jPanel1.setLayout(new javax.swing.BoxLayout(jPanel1, javax.swing.BoxLayout.Y_AXIS));

        javax.swing.GroupLayout pnlSelectorSouthLayout = new javax.swing.GroupLayout(pnlSelectorSouth);
        pnlSelectorSouth.setLayout(pnlSelectorSouthLayout);
        pnlSelectorSouthLayout.setHorizontalGroup(
            pnlSelectorSouthLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 700, Short.MAX_VALUE)
        );
        pnlSelectorSouthLayout.setVerticalGroup(
            pnlSelectorSouthLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 464, Short.MAX_VALUE)
        );

        jPanel1.add(pnlSelectorSouth);

        btnAceptarNombreEquipos.setText("Aceptar");
        btnAceptarNombreEquipos.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnAceptarNombreEquiposActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2);
        jPanel2.setLayout(jPanel2Layout);
        jPanel2Layout.setHorizontalGroup(
            jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup()
                .addContainerGap(619, Short.MAX_VALUE)
                .addComponent(btnAceptarNombreEquipos)
                .addContainerGap())
        );
        jPanel2Layout.setVerticalGroup(
            jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup()
                .addGap(5, 5, 5)
                .addComponent(btnAceptarNombreEquipos)
                .addContainerGap())
        );

        jPanel1.add(jPanel2);

        pnlSelectorEquipos.add(jPanel1);

        pnlContenido.add(pnlSelectorEquipos, "card2");

        btnFINuevo.setText("Nuevo torneo");
        btnFINuevo.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnFINuevoActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout pnlFakeIndexLayout = new javax.swing.GroupLayout(pnlFakeIndex);
        pnlFakeIndex.setLayout(pnlFakeIndexLayout);
        pnlFakeIndexLayout.setHorizontalGroup(
            pnlFakeIndexLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlFakeIndexLayout.createSequentialGroup()
                .addContainerGap()
                .addComponent(btnFINuevo)
                .addContainerGap(591, Short.MAX_VALUE))
        );
        pnlFakeIndexLayout.setVerticalGroup(
            pnlFakeIndexLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlFakeIndexLayout.createSequentialGroup()
                .addContainerGap()
                .addComponent(btnFINuevo)
                .addContainerGap(597, Short.MAX_VALUE))
        );

        pnlContenido.add(pnlFakeIndex, "card4");

        pnlFondo.add(pnlContenido);

        getContentPane().add(pnlFondo, "card5");

        mnuArchivo.setText("Archivo");

        mnuItNuevo.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_N, java.awt.event.InputEvent.CTRL_MASK));
        mnuItNuevo.setText("Nuevo");
        mnuItNuevo.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                mnuItNuevoActionPerformed(evt);
            }
        });
        mnuArchivo.add(mnuItNuevo);

        mnuItAbrir.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_A, java.awt.event.InputEvent.CTRL_MASK));
        mnuItAbrir.setText("Abrir...");
        mnuArchivo.add(mnuItAbrir);

        mnuItGuardar.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_G, java.awt.event.InputEvent.CTRL_MASK));
        mnuItGuardar.setText("Guardar");
        mnuArchivo.add(mnuItGuardar);

        mnuItGuardarComo.setText("Guarcar como...");
        mnuArchivo.add(mnuItGuardarComo);
        mnuArchivo.add(jSeparator1);

        mnuItImprimir.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_P, java.awt.event.InputEvent.CTRL_MASK));
        mnuItImprimir.setText("Imprimir");
        mnuArchivo.add(mnuItImprimir);
        mnuArchivo.add(jSeparator2);

        mnuItSalir.setText("Cerrar");
        mnuArchivo.add(mnuItSalir);

        mnuBar.add(mnuArchivo);

        mnuAjustes.setText("Ajustes");
        mnuBar.add(mnuAjustes);

        mnuAyuda.setText("Ayuda");

        mnuItVerAyuda.setText("Ver la Ayuda");
        mnuAyuda.add(mnuItVerAyuda);

        mnuItAcerca.setText("Acerca de");
        mnuItAcerca.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                mnuItAcercaActionPerformed(evt);
            }
        });
        mnuAyuda.add(mnuItAcerca);

        mnuBar.add(mnuAyuda);

        setJMenuBar(mnuBar);

        pack();
    }// </editor-fold>//GEN-END:initComponents

    private void btnAceptarNombreEquiposActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnAceptarNombreEquiposActionPerformed
        if (nombreEquiposCorrecto()){
            if (guardarNombreEquiposCorrecto()){// Guarda los nombres en cadenaEquipos y comprueba que no exista ningún nombre repetido
                pnlSelectorEquipos.setVisible(false);
                pnlIndex.setVisible(true);
                pnlIndex.setSelectedIndex(0);
                //Ordenos los equipos aleatoriamente
                cadenaEquipos = Operaciones.aleatorizarEquipos(cadenaEquipos);
                datos = new Datos(cadenaEquipos);
                if (cadenaEquipos.size() >= 3 && cadenaEquipos.size() <= 10){ //1 grupo
                    try{
                        datos.addGrupo(1);
                    }
                    catch (ClassCastException ex){
                        JOptionPane.showMessageDialog(this, "Error al repartir los grupos (datos.addGrupo).", "Error", JOptionPane.ERROR_MESSAGE);
                    }
                    
                    pnlClasificacionVacio.setVisible(false);
                    pnlClasificacion10.setVisible(true);
                    pnlClasificacion14.setVisible(false);
                    pnlClasificacion20.setVisible(false);
                    
                    //Llenado de tabla
                    DefaultTableModel modelo;
                    String []cabecera={"Clasificacion","PJ","PG","PE","PP","GF","GC","Ptos"};
                    modelo=new DefaultTableModel(cabecera,0);
                    tblClasificacion10.setModel(modelo);
                    Object []fila=new Object[modelo.getColumnCount()];
                    for(int i=0;i<cadenaEquipos.size();i++){
                        fila[0]=cadenaEquipos.get(i);
                        fila[1]="0";
                        fila[2]="0";
                        fila[3]="0";
                        fila[4]="0";
                        fila[5]="0";
                        fila[6]="0";
                        fila[7]="0";
                        //añadimos la fila
                        modelo.addRow(fila);
                    }
                }
                else if (cadenaEquipos.size() >= 11 && cadenaEquipos.size() <= 14){ //2 grupos
                    try{
                        datos.addGrupo(2);
                    }
                    catch (ClassCastException ex){
                        JOptionPane.showMessageDialog(this, "Error al repartir los grupos (datos.addGrupo).", "Error", JOptionPane.ERROR_MESSAGE);
                    }
                    pnlClasificacionVacio.setVisible(false);
                    pnlClasificacion10.setVisible(false);
                    pnlClasificacion14.setVisible(true);
                    pnlClasificacion20.setVisible(false);
                    
                    //Llenado de tabla 14A
                    DefaultTableModel modelo14A;
                    String []cabecera={"Clasificacion","PJ","PG","PE","PP","GF","GC","Ptos"};
                    modelo14A=new DefaultTableModel(cabecera,0);
                    tblClasificacion14A.setModel(modelo14A);
                    Object []fila=new Object[modelo14A.getColumnCount()];
                    ArrayList <String> grupo14A = new ArrayList();
                    grupo14A = datos.getEquiposGrupo("Grupo 1");
                    for(int i=0;i<cadenaEquipos.size();i++){
                        fila[0]=grupo14A.get(i);
                        fila[1]="0";
                        fila[2]="0";
                        fila[3]="0";
                        fila[4]="0";
                        fila[5]="0";
                        fila[6]="0";
                        fila[7]="0";
                        //añadimos la fila
                        modelo14A.addRow(fila);
                    }
                    //Llenado de tabla 14B
                    DefaultTableModel modelo14B;
                    modelo14B=new DefaultTableModel(cabecera,0);
                    tblClasificacion14B.setModel(modelo14B);
                    fila=new Object[modelo14B.getColumnCount()];
                    ArrayList <String> grupo14B = new ArrayList();
                    grupo14B = datos.getEquiposGrupo("Grupo 2");
                    for(int i=0;i<cadenaEquipos.size();i++){
                        if (grupo14B.get(i)!= null){
                            fila[0]=grupo14B.get(i);
                            fila[1]="0";
                            fila[2]="0";
                            fila[3]="0";
                            fila[4]="0";
                            fila[5]="0";
                            fila[6]="0";
                            fila[7]="0";
                            //añadimos la fila
                            modelo14B.addRow(fila);
                        }
                    }
                    
                    
                }
                else if (cadenaEquipos.size() >= 15 && cadenaEquipos.size() <= 20){
                    try{
                        datos.addGrupo(4);
                    }
                    catch (ClassCastException ex){
                        JOptionPane.showMessageDialog(this, "Error al repartir los grupos (datos.addGrupo).", "Error", JOptionPane.ERROR_MESSAGE);
                    }
                    pnlClasificacionVacio.setVisible(false);
                    pnlClasificacion10.setVisible(false);
                    pnlClasificacion14.setVisible(false);
                    pnlClasificacion20.setVisible(true);
                }
                else{
                    pnlClasificacionVacio.setVisible(true);
                    pnlClasificacion10.setVisible(false);
                    pnlClasificacion14.setVisible(false);
                    pnlClasificacion20.setVisible(false);
                }
            }
        }
    }//GEN-LAST:event_btnAceptarNombreEquiposActionPerformed
    private void btnFINuevoActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnFINuevoActionPerformed
        pnlFakeIndex.setVisible(false);
        pnlSelectorEquipos.setVisible(true);
    }//GEN-LAST:event_btnFINuevoActionPerformed

    private void txtNEquiposInputMethodTextChanged(java.awt.event.InputMethodEvent evt) {//GEN-FIRST:event_txtNEquiposInputMethodTextChanged
    }//GEN-LAST:event_txtNEquiposInputMethodTextChanged

    private void txtNEquiposKeyTyped(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_txtNEquiposKeyTyped

    }//GEN-LAST:event_txtNEquiposKeyTyped

    private void txtNEquiposKeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_txtNEquiposKeyReleased
        int nEquipos;
        try{
            nEquipos = Integer.parseInt(txtNEquipos.getText());
            if (nEquipos<=20){
                //Limpio pnlSelectorSouth de labels y txtfields:
                pnlSelectorSouth.removeAll();
                pnlSelectorSouth.updateUI();
                javax.swing.JLabel lblTituloSelectorSouth = new javax.swing.JLabel();
                lblTituloSelectorSouth.setVisible(true);
                lblTituloSelectorSouth.setBounds(25, 5, 225, 30);
                lblTituloSelectorSouth.setText("Introduce el nombre de cada equipo:");
                pnlSelectorSouth.add(lblTituloSelectorSouth);
                btnAceptarNombreEquipos.setVisible(true);
                //Creo los labels y textFields  nuevos(los textfields los guardo en un ArrayList):
                listaTxtFields.clear();
                int cont=0, i=0;
                
                while (i<nEquipos){//i: fila    
                    for (int j=0; j<3; j++){//columna(3 columnas)
                        if(cont < nEquipos){
                            javax.swing.JLabel lblEquipo = new javax.swing.JLabel();
                            lblEquipo.setVisible(true);
                            lblEquipo.setBounds((j*210)+25,(i*50)+45,75,30);
                            pnlSelectorSouth.add(lblEquipo);
                            lblEquipo.setText("Equipo "+(cont+1)+":");

                            listaTxtFields.add(new javax.swing.JTextField());
                            listaTxtFields.get(cont).setVisible(true);
                            listaTxtFields.get(cont).setBounds((j*210)+85,(i*50)+45,100,30);
                            pnlSelectorSouth.add(listaTxtFields.get(cont));

                            cont++;
                        }
                        else{
                            break;
                        }
                    }
                    i++;
                }

            }
        }
        catch (NumberFormatException | HeadlessException ex){}
    }//GEN-LAST:event_txtNEquiposKeyReleased

    private void mnuItNuevoActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_mnuItNuevoActionPerformed
        if (cadenaEquipos.size() != 0){
            int seleccion = JOptionPane.showConfirmDialog(this, "Atención. \nYa existe un campeonato. ¿Desea borrarle y crear uno nuevo?", "Sobreescribir", JOptionPane.YES_NO_OPTION);
            if (seleccion == 0){
                pnlSelectorEquipos.setVisible(true);
                pnlIndex.setVisible(false);
                cadenaEquipos.clear();
            }
        }
        else{
            pnlSelectorEquipos.setVisible(true);
            pnlIndex.setVisible(false);
        }
    }//GEN-LAST:event_mnuItNuevoActionPerformed

    private void mnuItAcercaActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_mnuItAcercaActionPerformed
        dialAcerca.setVisible(true);
    }//GEN-LAST:event_mnuItAcercaActionPerformed
    public static void main(String args[]) {
        /* Set the Nimbus look and feel */
        //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
        /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
         * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html 
         */
        try {
            for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
                if ("Nimbus".equals(info.getName())) {
                    javax.swing.UIManager.setLookAndFeel(info.getClassName());
                    break;
                }
            }
        } catch (ClassNotFoundException ex) {
            java.util.logging.Logger.getLogger(Marco.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (InstantiationException ex) {
            java.util.logging.Logger.getLogger(Marco.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (IllegalAccessException ex) {
            java.util.logging.Logger.getLogger(Marco.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (javax.swing.UnsupportedLookAndFeelException ex) {
            java.util.logging.Logger.getLogger(Marco.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        }
        //</editor-fold>

        /* Create and display the form */
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                try {
                    new Marco().setVisible(true);
                } catch (Exception ex) {
                    Logger.getLogger(Marco.class.getName()).log(Level.SEVERE, null, ex);
                }
            }
        });
    }
    public boolean nombreEquiposCorrecto(){
        //método que comprueba que los nombres de los equipos sean correctos
        boolean respuesta = true;
        for (int i=0; i<listaTxtFields.size(); i++){
            if (listaTxtFields.get(i).getText().trim().length() == 0) {
                respuesta = false;
                break;
            }
        }
        if (!respuesta){
            JOptionPane.showMessageDialog(this, "Se ha producido un error. \nCompruebe que ha introducido el nombre de los equipos correctamente.", "Error", JOptionPane.ERROR_MESSAGE);
        }
        return respuesta;
    }
    public boolean guardarNombreEquiposCorrecto(){
        //método que recibe los textFields creados y almacena los nombres de los equipos en el ArrayList cadenaEquipos.
        //además comprueba que no exista ningun equipo repetido
        boolean respuesta = true;
        for (int i=0; i<listaTxtFields.size(); i++){
            cadenaEquipos.add(listaTxtFields.get(i).getText().trim());
            //comprueba que el nombre guardado no es igual a ninguno de los introducidos anteriormente
            for (int j=0; j<i; j++){
                if (cadenaEquipos.get(i).equalsIgnoreCase(cadenaEquipos.get(j))){
                    respuesta = false;
                    break;
                }
            }    
        }
        if (respuesta == false){
                JOptionPane.showMessageDialog(this, "Se ha producido un error. \nEl nombre de uno o más equipos está repetido.", "Error", JOptionPane.ERROR_MESSAGE);
                cadenaEquipos.clear();
        }
        return respuesta;
    }
    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JButton btnAceptarNombreEquipos;
    private javax.swing.JButton btnFINuevo;
    private javax.swing.JDialog dialAcerca;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel10;
    private javax.swing.JLabel jLabel11;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel22;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JLabel jLabel4;
    private javax.swing.JLabel jLabel5;
    private javax.swing.JLabel jLabel8;
    private javax.swing.JLabel jLabel9;
    private javax.swing.JPanel jPanel1;
    private javax.swing.JPanel jPanel2;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JScrollPane jScrollPane3;
    private javax.swing.JScrollPane jScrollPane4;
    private javax.swing.JScrollPane jScrollPane6;
    private javax.swing.JScrollPane jScrollPane7;
    private javax.swing.JScrollPane jScrollPane8;
    private javax.swing.JScrollPane jScrollPane9;
    private javax.swing.JPopupMenu.Separator jSeparator1;
    private javax.swing.JPopupMenu.Separator jSeparator2;
    private javax.swing.JSeparator jSeparator3;
    private javax.swing.JToolBar jToolBar1;
    private javax.swing.JLabel lblClasificacionVacio1;
    private javax.swing.JLabel lblClasificacionVacio2;
    private javax.swing.JMenu mnuAjustes;
    private javax.swing.JMenu mnuArchivo;
    private javax.swing.JMenu mnuAyuda;
    private javax.swing.JMenuBar mnuBar;
    private javax.swing.JMenuItem mnuItAbrir;
    private javax.swing.JMenuItem mnuItAcerca;
    private javax.swing.JMenuItem mnuItGuardar;
    private javax.swing.JMenuItem mnuItGuardarComo;
    private javax.swing.JMenuItem mnuItImprimir;
    private javax.swing.JMenuItem mnuItNuevo;
    private javax.swing.JMenuItem mnuItSalir;
    private javax.swing.JMenuItem mnuItVerAyuda;
    private javax.swing.JPanel pnlCalendario;
    private javax.swing.JPanel pnlClasificacion;
    private javax.swing.JPanel pnlClasificacion10;
    private javax.swing.JPanel pnlClasificacion14;
    private javax.swing.JPanel pnlClasificacion20;
    private javax.swing.JPanel pnlClasificacionVacio;
    private javax.swing.JPanel pnlConfig;
    private javax.swing.JPanel pnlContenido;
    private javax.swing.JPanel pnlFakeIndex;
    private javax.swing.JPanel pnlFondo;
    private javax.swing.JTabbedPane pnlIndex;
    private javax.swing.JPanel pnlSelectorEquipos;
    private javax.swing.JPanel pnlSelectorNorth;
    private javax.swing.JPanel pnlSelectorSouth;
    private javax.swing.JPanel pnlToolBar;
    private javax.swing.JTable tblClasificacion10;
    private javax.swing.JTable tblClasificacion14A;
    private javax.swing.JTable tblClasificacion14B;
    private javax.swing.JTable tblClasificacion20A;
    private javax.swing.JTable tblClasificacion20B;
    private javax.swing.JTable tblClasificacion20C;
    private javax.swing.JTable tblClasificacion20D;
    private javax.swing.JTextField txtNEquipos;
    // End of variables declaration//GEN-END:variables
}
